/*
 * @Author: hucc
 * @Date: 2021-09-28 11:04:39
 * @LastEditors: hucc
 * @LastEditTime: 2021-10-06 15:39:29
 * @Description: 
 */

//typeof返回的类型 number boolean string object function undefined
//symbol类型的值代表独一无二的值
//Symbol参数不会生成新的内容，只是对实例对象的描述
let sy1 = Symbol('sy1')
console.log(sy1); //Symbol(sy1)
let sy2 = Symbol('sy2');
console.log(sy2) //Symbol(sy2)
console.log(sy1 === sy2); //false
console.log(typeof sy2); //symbol

//symbol在对象里使用 作为唯一的key值，不会出现同名属性 
// 不会与对象里的不可枚举的属性属性值里发生冲突
let obj1 = {
    name: '123',
    age: 12,
    gender: "male",
    [sy1]: "zs"
}
console.log(obj1); //{ name: '123', age: 12, gender: 'male', [Symbol(sy1)]: 'zs' }
console.log(obj1[sy1]); //zs